#ifndef RATE_H_
#define RATE_H_

#include "../../SAMA_Function.h"


typedef struct {
	float Last_AI;					//< 上一时刻模拟量输入
	float Last_AO;					//< 上一时刻输出
}RATE_Sta_t;

struct RATE_T
{
	Model_Base_t Base;				//< 模块基本参数结构体
	RATE_Sta_t Sta;					//< 模块运算中间参数结构体
};


extern RATE_T* RATE_t;


bool CALCU_SAMA(RATE)(Model_Base_t* arg, float dt, bool* DI, bool* DO, float* AI, float* AO);		//< SAMA运算函数
int BAK_STA(RATE)(Model_Base_t* arg, void** Data);													//< 备份SAMA运算中间参数
int ANA_STA(RATE)(Model_Base_t* arg, void** Data);													//< 解析备份的SAMA运算中间参数
void INIT_STAPAR(RATE)(Model_Base_t* arg);															//< 初始化模块运算中间参数


#endif
